Avorion Script API Documentation
Player Callbacks
Note: Callbacks have to be buffered in certain situations and won't happen immediately. When unregistering a callback during a callback, all callbacks that were buffered during the last frame may still be sent, even though they were unregistered.
callback onAllianceChanged(allianceIndex)
Executed whenever the player's alliance changes
Parameters
callback onAllianceInvitationReceived(allianceIndex)
Executed whenever the player receives an invitation from an alliance
Parameters
callback onAllScriptValuesChanged(playerIndex)
Executed whenever all scripts values of the player have been changed at once
Parameters
callback onChatMessage(playerIndex, text, channel)
Executed whenever the player sent a chat message to the server. Only called if the chat message is valid and the player doesn't have a chat ban.
Parameters
text The text content of the chat message
channel The channel the message was sent to. 0 = All, 1 = Sector, 2 = Group, 3 = Alliance
callback onChatRestrictionTimeChanged(time)
Executed whenever a player's chat restriction time is changed. This usually only happens when administrators need to stop a player from using chat.
Parameters
callback onCraftChanged(id, previousId)
Called whenever the player changes their flown craft
Parameters
previousId The id of the previous craft
callback onGalaxyMapKeyboardUp(button)
Executed whenever a keyboard-up event occurs on the galaxy map. Keyboad-Up events are transferred to all UI elements and can't be consumed.
Parameters
callback onGalaxyMapMouseUp(button, mx, my, cx, cy, mapMoved)
Executed whenever a mouse-up event occurs on the galaxy map. Mouse-Up events are transferred to all UI elements and can't be consumed.
Parameters
mx The mouse X position
my The mouse Y position
cx The coordinates X position
cy The coordinates Y position
mapMoved True if the map was moved during the mouse pressing
callback onGroupChanged(groupIndex)
Executed whenever the player's group index changes
Parameters
callback onGroupLeaderChanged(playerIndex)
Executed whenever the leader of the player's group changes
Parameters
callback onGroupPlayerCraftChanged(playerIndex, id)
Executed whenever another player of the player's group changes crafts
Parameters
id The id of the new craft
callback onGroupPlayerSectorChanged(playerIndex, x, y)
Executed whenever another player of the player's group changes sectors
Parameters
x The x coordinate of the new sector
y The y coordinate of the new sector
callback onHomeSectorChanged(x, y)
Called whenever the home sector of the player changes
Parameters
y The y coordinate of the new home sector
callback onHyperspaceRestrictionTimeChanged(time)
Executed whenever a player's hyperspace restriction time is changed. This usually only happens when administrators need to trap a player in a specific sector.
Parameters
callback onItemAdded(itemIndex, amount, amountBefore)
Executed whenever the number of items in a particular item slot in the player's inventory increases or a new item was added.
Parameters
amount The new amount of this item
amountBefore The amount of this item before the change
callback onItemChanged(itemIndex, amount, amountBefore)
Executed whenever the number of items in a particular item slot in the player's inventory changes.
Parameters
amount The new amount of this item
amountBefore The amount of this item before the change
callback onItemPropertiesChanged(item, index, amount)
Called whenever an item in the player inventory changes properties
Parameters
index Index of the inventory item
amount Amount of items in the slot
callback onItemRemoved(itemIndex, amount, amountBefore)
Executed whenever the number of items in a particular item slot in the player's inventory decreases or the item was removed.
Parameters
amount The new amount of this item
amountBefore The amount of this item before the change
callback onJumpRouteCalculationStarted(playerIndex, craftIndex, destinationX, destinationY)
Executed whenever a player starts a new hyperspace jump route calculation
Parameters
craftIndex The id of the entity that does the calculation
destinationX The x-coordinate of the destination sector
destinationY The y-coordinate of the destination sector
callback onKnownSectorAdded(x, y)
Called whenever a new tracked sector is added to the player database
Parameters
y The y coordinate of the sector
callback onKnownSectorRemoved(x, y)
Called whenever a tracked sector was removed from the player database
Parameters
y The y coordinate of the sector
callback onKnownSectorUpdated(x, y)
Called whenever a tracked sector is updated in the player database
Parameters
y The y coordinate of the sector
callback onMailAdded(playerIndex, mail, mailIndex)
Executed whenever the player receives a new mail
Parameters
mail The received mail
mailIndex Index of the received mail
callback onMailCleared(playerIndex, mailIndex)
Executed whenever the player takes the contents of a mail
Parameters
mailIndex Index of the cleared mail
callback onMailDeleted(playerIndex, mailIndex)
Executed whenever the player deletes a mail
Parameters
mailIndex Index of the deleted mail
callback onMailRead(playerIndex, mailIndex)
Executed whenever the player reads a mail
Parameters
mailIndex Index of the read mail
callback onMaxBuildableMaterialChanged(material)
Executed whenever a player's ship building knowledge changes.
Parameters
callback onMaxBuildableSocketsChanged(slots)
Executed whenever a player's ship building knowledge changes.
Parameters
callback onMoveToReconstructionSite(x, y, playerIndex)
Executed whenever a move to reconstruction or respawn site is triggered because the player was destroyed. Called even if the player is already at their reconstruction/respawn site. Coordinates can be either reconstruction site or respawn site.
Parameters
y Y coordinate of destination the player is moved to
playerIndex Index of the player
callback onPlayerArrivalConfirmed(playerIndex)
Executed when the client reports that it entered the target sector. Clients send a message to the server once the loading screen ended. Once you receive this callback, the client has successfully loaded the sector it went into.
Parameters
callback onPlayerEnteredGroup(playerIndex)
Executed whenever another player enters the player's group
Parameters
callback onPlayerLeftGroup(playerIndex)
Executed whenever another player from the player's group leaves the group
Parameters
callback onReconstructionSectorChanged(x, y)
Executed whenever the player's respawn sector changes
Parameters
y The y coordinate of the new sector
callback onRelationChanged(index, level, levelBefore, notify)
Called whenever relations of the player to another faction change
Parameters
level The level of the relation
levelBefore The level of the relation before the change
notify A boolean indicating whether or not the player should be notified about the change
callback onRelationLevelChanged(playerIndex, factionIndex, relations)
Executed whenever the relations of the player to another faction changes.
Parameters
factionIndex Index of the other faction
relations The new relations of the player to the other faction
callback onRelationStatusChanged(playerIndex, factionIndex, status)
Executed whenever the relation status of the player to another faction changes.
Parameters
factionIndex Index of the other faction
status The new relation status of the player to the other faction
callback onResourcesChanged(playerIndex)
Executed whenever the money or resources of the player change
Parameters
callback onScriptAdded(playerIndex, scriptIndex, scriptPath)
Executed after a script was added to the player
Parameters
scriptIndex The index of the script that was added
scriptPath The path of the old script
callback onScriptRemoved(playerIndex, oldScriptIndex, scriptPath)
Executed after a script was removed from the player
Parameters
oldScriptIndex The old index of the script that was removed
scriptPath The path of the old script
callback onScriptValueChanged(playerIndex, name, value)
Executed whenever a script value of the player was changed
Parameters
name The name of the value
value The new value
callback onSectorArrivalConfirmed(playerIndex, x, y)
Executed when the client reports that it entered the target sector. Clients send a message to the server once the loading screen ended. Once you receive this callback, the client has successfully loaded the sector it went into.
Parameters
x X-Coordinate of the entered sector
y Y-Coordinate of the entered sector
callback onSectorChanged(x, y)
Executed whenever the player changes the sector. Specifically, this callback is sent whenever the player's sector coordinates change in the database, even when they're not online.
Parameters
y The y coordinate of the new sector
callback onSectorEntered(playerIndex, x, y, sectorChangeType)
Executed whenever the player is logged in and physically enters a new sector.
Parameters
x The x coordinates of the sector entered
y The y coordinates of the sector entered
sectorChangeType The kind of sector change that is happening
callback onSectorLeft(playerIndex, x, y, sectorChangeType)
Executed whenever the player leaves their current sector, before entities are removed
Parameters
x The x coordinates of the sector left
y The y coordinates of the sector left
sectorChangeType The kind of sector change that is happening
callback onShipAvailabilityUpdated(name, availability)
Called whenever a ShipInfo changes availability status (ie. goes into background simulation)
Parameters
availability The new availability status of the ship
callback onShipCargoUpdated(name)
Called whenever the cargo of a ShipInfo changes
Parameters
callback onShipChanged(playerIndex, craftId)
Executed whenever the player changes the ship he is currently flying
Parameters
craftId The id of the new craft he is flying
callback onShipCrewUpdated(name)
Called whenever the crew of a ShipInfo changes
Parameters
callback onShipHyperspacePropertiesUpdated(name, reach, canPassRifts)
Called whenever the hyperspace reach of a ShipInfo changes
Parameters
reach The new reach of the ship
canPassRifts A boolean indicating whether the ship can jump across rifts
callback onShipIconUpdated(name, icon)
Called whenever the icon of a ShipInfo changes
Parameters
icon The new icon of the ship
callback onShipInfoAdded(name)
Called whenever a ShipInfo is added to the player
Parameters
callback onShipInfoRemoved(name)
Called whenever a ShipInfo is removed from the player
Parameters
callback onShipInfoUpdated(name)
Called whenever a ShipInfo is updated in some way
Parameters
callback onShipNameUpdated(name, newName)
Called whenever the name of a ShipInfo changes
Parameters
newName The new name of the ship
callback onShipOrderInfoUpdated(name, orderInfo)
Called whenever the order info of a ShipInfo changes
Parameters
orderInfo The order info of the ship
callback onShipPayDayUpdated(name, time)
Called whenever the payday of a ShipInfo changes
Parameters
time The payday of the ship
callback onShipPlanUpdated(name)
Called whenever the plan of a ShipInfo changes
Parameters
callback onShipPositionUpdated(name, x, y)
Called whenever a ShipInfo changes sectors
Parameters
x The new x coordinate of the ship
y The new y coordinate of the ship
callback onShipReconstructionValueUpdated(name, value)
Called whenever the reconstruction value of a ShipInfo changes
Parameters
value The value of the ship
callback onShipStatusMessageUpdated(name, status, args)
Called whenever the status info of a ShipInfo changes
Parameters
status The status info text of the ship
args A table holding the status info localization arguments
callback onShipTitleUpdated(name)
Called whenever the title of a ShipInfo changes
Parameters
callback onShipTypeUpdated(name, type)
Called whenever the entity type of a ShipInfo changes
Parameters
type The new entity type of the ship
Callbacks Alliance [Client] Callbacks Alliance [Server] Callbacks Alliance [Server] Callbacks Entity Callbacks Galaxy Callbacks Player Callbacks Player [Client] Callbacks Sector Callbacks Server Callbacks
Command Entity FactionDatabase PlanGenerator Player Sector Server UsableInventoryItem
Boarding BspTree CargoBay CargoLoot ControlUnit CrewComponent DeletionTimer DirectFlightPhysics DockingClamps DockingParent DockingPositions Durability EnergySystem Engine FighterAI Hangar HyperspaceEngine InteractionText InventoryItemLoot Owner Physics Plan ReadOnlyBoarding ReadOnlyBspTree ReadOnlyCargoBay ReadOnlyControlUnit ReadOnlyCrew ReadOnlyDeletionTimer ReadOnlyEnergySystem ReadOnlyEngine ReadOnlyFighterAI ReadOnlyHangar ReadOnlyHyperspaceEngine ReadOnlyInteractionText ReadOnlyOwner ReadOnlyPhysics ReadOnlyPlan ReadOnlyShipAI ReadOnlyShipSystem ReadOnlyTorpedoAI [Server] [Client] [Server] [Client] ReadOnlyTorpedoAI [Server] [Client] [Server] [Client] ReadOnlyTorpedoLauncher ReadOnlyTurretBases ReadOnlyVelocity ReadOnlyWeapons ReadOnlyWormHole Shield ShipAI ShipSystem StructuralIntegrity SystemUpgradeLoot Thrusters Torpedo TorpedoAI TorpedoLauncher Turret TurretAI TurretBases Velocity Weapons WormHole
AllianceMember AllianceRank BlockPlan BlockPlanBlock BlockStatistics Box Captain Color ControlUnitSeat CraftDesign CraftStatsOverview Crew CrewMan CrewProfession DebugInfo dvec2 dvec3 dvec4 Entity EntityDescriptor FighterTemplate Format GameSettings Group HighResolutionTimer Inventory InventoryTurret ivec2 ivec3 ivec4 Language Mail Material Matrix ModManager NamedFormat PlanBspTree PlanetSpecifics PlanGenerationStage PlanPart PlanStyle PlayerId PluralForm Profiler QuadTree Random Rarity Ray ReadOnlyEntity Rect Relation Scenario SectorView Seed Sphere Squad SystemUpgradeTemplate Timer Tooltip TooltipLine TorpedoShaft TorpedoTemplate TradingGood TurretDesign TurretDesignPart TurretTemplate UsableInventoryItem Uuid VanillaInventoryItem vec2 vec3 vec4 Version Weapon
EntityIcon EntityTooltip PlanMesh ReadOnlyIcon ReadOnlyPlanMesh ReadOnlyScriptUI ReadOnlyTooltip ScriptUI
Achievements Alliance [Client] CameraKeyFrame CaptainSelectionItem Client ClientSettings ColorSelectionItem CraftDesignSelectionItem Faction [Client] Galaxy [Client] GalaxyMap GameInput GlowFX IconSelectionItem InputWindow InventoryReferenceSelectionItem InventorySelectionItem Keyboard LaserFX Mouse Music PixelIconSelectionItem Planet Player [Client] PlayerWindow RefractionFX Sector [Client] SelectionItem ShipDatabaseEntry [Client] SoundSource StrategyState TargetIndicator TooltipRenderer TurretDesignSelectionItem
AllianceEmblem AllianceTab ArrowLine Button [Client] [Client] Button [Client] [Client] CaptainIcon CaptainProfile CheckBox ComboBox ContextMenu CraftPortrait CrewBar Frame Hud InventorySelection Label Line ListBox ListBoxEx MapArrowLine MapIcon MultiLineTextBox NumbersBar Picture PlanDisplayer ProgressBar SavedDesignsSelection ScrollFrame Selection ShipWindow Slider StatisticsBar Tab TabbedWindow TextBox TextField TooltipDisplayer Tree UIArbitraryHorizontalSplitter UIArbitraryVerticalSplitter UIContainer UIElement UIGridSplitter UIHorizontalLister UIHorizontalMultiSplitter UIHorizontalSplitter UIOrganizer UIRect UIRenderer UIVerticalLister UIVerticalMultiSplitter UIVerticalSplitter ValueComboBox Window
EntityTransferrer FighterController Loot ReadOnlyEntityTransferrer ReadOnlyFighterController ReadOnlyLoot ReadOnlyTurretController ReadOnlyWreckageCreator TurretController WreckageCreator
Alliance [Server] Faction [Server] Galaxy [Server] Player [Server] ReadOnlySector Sector [Server] Server ShipDatabaseEntry [Server]
AIState AlliancePrivilege BeamShape BlockShading BlockStructure BlockType BlockType2 BoxType BuildError CaptainGenderId ChatChannel ChatMessageType ComponentType ControlAction ControlActionBit ControlStyle CoolingType CraftStatsOverviewStat CrewProfessionType CrewRank DamageSource DamageType DeletionType Difficulty EntityArrivalType EntityType FighterOrders FighterStartError FighterType FontType ImpactParticles InventoryItemType JumpError KeyboardKey ListBoxEntryType MalusReason MaterialType MoonType MouseButton PlanetType PlayerStateType ProjectileShape RarityType RelationStatus SavedDesignType ScenarioType SectorChangeType ShipAvailability SoundType StatsBonuses TargetIndicatorVisuals TransformationFeature TurretAutoFireMode TurretSlotType WeaponAppearance WeaponCategory
This is the official documentation for the scripting API of Avorion. This documentation is automatically generated and not necessarily complete. Depending on the context in which functions exist, some documentation such as descriptions, return values or variable names or types may be missing.
Work in Progress. Documentation of Avorion Version: 2.5.7 c8e4beec84f7